1. Field of the Invention
The present invention relates to the field of distributing media, such as movies, via a network or with storage.
2. Description of the Prior Art
Movie distribution today is primarily composed of renting or purchasing DVDs and Blu-Ray disks, on one hand, and real-time streaming of video on the other.
The advantages of the former, shipping physical media with read-only movies on it, are quite simple. The consumer gets a physical object in his hand, which he can save for as long as he wants, and can carry it to any location where he wishes to see the movie and an appropriate DVD or Blu-Ray player is available. There is a lag to getting the media in the first place—either the movie is mailed to him, which takes time, or he has to go shopping to find it for rent or sale—and there is always a possibility that the movie will be sold out in the particular store, or the media will get damaged or lost. On the other hand, once the disk is in the consumer's hands, he can view it whenever he wants, whether he is connected to a network or not, with no delays or resource constraints.
The advantages of the latter, real-time streaming, are also simple. There is no delay with real-time streaming; rather, the lag of getting the disk and delaying gratification is replaced with having to be connected to the real-time streaming server over the network, and thus trades instant availability for resource constraints. The consumer can watch whatever he wants—so long as the movie is made available for him—whenever he wants—so long as he is connected to a network of suitable bandwidth. The copyright holder also sees a benefit. With disks, the entire digital contents are sent out at once into the wild, where cheap devices can read it, copy it, and then possibly disseminate it. With real-time streaming, the contents are typically sent in a way that is more difficult to record, and will likely produce an inferior product than a disk in hand. Also, digital rights management can be brought to bear, and issues that plague Blu-Ray (leaked device keys, causing all disks made until then to be compromised) can be eliminated so long as the stream is not recorded.
Of course, the big disadvantage of streamed videos is that you must be networked at that moment to get the video. And with network resources always a possible constraint—even though bandwidth tends to increase over time, so does user adoption and application demands en masse, as is evidenced by the capacity problems AT&T is seeing with the iPhone on their 3G networks—there may be other reasons why not to want streaming.
Companies such as Netflix enable both models, but cannot solve the problems inherent to each.
What would be desired is a way of removing the permanent, never-changing status of the contents that a Blu-Ray and DVD disk provides, while allowing streaming to be an attractive model for off-line viewing. Essentially, if the user can download a movie onto a stable, but mutable and portable storage, in a way that is secure and preserves copyrights, then the user can have his movie now and take it with him too. Furthermore, being able to place it in a compact, shock-resistant device allows the movies to be carried more easily than with disks. Giving such a device a USB or similar interface would allow these movies to be seen on netbooks and other devices that, for cost, power, or size reasons do not have optical drives. Therefore, such a device would simultaneously unlock a broad segment of consumers to now be able to rent or purchase movies far easier than with optical disks.
One way of addressing the problem is to get videos onto USB flash drives. (It should be clear that any stable storage mechanism can be substituted.) If the movie could be copied off of the Blu-ray or DVD disk, then distribution outside of the disk could be reasoned about. That would allow downloads or streaming of the disk image itself, as well as storing it in a portable device.
Of course, Blu-ray and DVD disks from commercial pre-recorded sources are designed not to be able to be copied off of their disks. They employ a multiple-layer scheme (based on CSS for DVDs and AACS for Blu-ray) that involves the disk, the optical drive, and the software player. This is to prevent unauthorized duplication.
At the bottom layer, the sectors of the disk that contain the movie or other protected information is encrypted. One layer up, the optical drives interact with the host system using a disk-based interface (Mt. Fuji for DVD, and pure SCSI for Blu-ray) that prevents the host computer from being able to read the encrypted sectors (even though reading may only mean sending the encrypted data, in its encrypted form) at all, until the host computer or an application running on it authenticates with the optical drive using the appropriate security mechanisms. These mechanisms involve distributing keys to the player, the drive, and the disk. Finally, the key necessary to decrypt the video for Blu-ray requires access to identity information that is not necessarily considered to be a part of the disk image itself, but rather some metadata that can only be read using special authorized commands to the drive (ROM-mark).
What this means is that the optical drive is a required participant for watching the video. Even when all of the sectors of the disk can be copied off of the optical disk onto another storage device (hard disk, USB flash, etc), as is possible once an authorized player software authenticates with the optical drive containing the disk, the security context needed to decrypt the movie and play it is still contained in the optical drive, making that drive a dongle, so to speak. (The player software would still have to be modified or misdirected into believing that the sectors being played are from a disk in that optical drive, so that it could negotiate for the title key, so just having the drive present does not solve the problem by itself.)
Therefore, simply copying the disk image does not solve the problem.
Movies can be encoded in other formats than that of a Blu-ray disk or DVD. There are plenty of methods known to the industry for movies to be encrypted using software-based digital rights management systems. These systems are often proprietary, or are not widely disseminated. Thus, the software has to either come with the movie itself or must be installed in advance on each and every player, as well as possibly on the streaming or download points where the movies are being initially grabbed from the Internet.
Most digital rights management systems suffer from their lack of ubiquity or their complexity—or both. Quite frankly, these systems are often designed with maximizing the flexibility of the revenue-generating options of the content provider, and thus can become bewildering to users who already understand and are used to the simplicity of inserting a Blu-ray or DVD disk into the computer and watching the movie begin with minimal interaction. Ideally, completely proprietary or novel-to-the-user DRM systems ought to be avoided—and yet the security they bring is paramount to protecting the copyrights of the content owner.
Note that DRM can apply to portable movies—ones that can be downloaded once online and played offline later—as well as streaming movies—ones that can only be watched as they are downloaded and are generally designed or regarded as not remaining around for future viewing.
An example in prior art of an attempt to use digital rights management to control copying of movies distributed by USB is with the Roxio/Sonic CinemaNow USB distribution, involving DRM technology from Widevine. These devices, as of this writing not widely available, include media player software, digital rights management software, and the proper codecs to allow supported systems to display movies downloaded onto the USB stick. The disadvantages of this mechanism are clear: the added software burden required by reimplementing a movie player, rather than leveraging existing media interfaces such as Blu-ray, widely limit the devices onto which the CinemaNow USB stick can play. By not taking advantage of the ability of many media interfaces (such as USB) to abstract the functionality of existing and widely-adopted hardware interfaces (such as Blu-ray), the Cinemallow product and those like it are forced to reduce their protection to that of software-based players only. In other words, the value they provide above and beyond a standard USB flash drive is unclear or simply not there, whereas the detriment of requiring custom software on the host computer or device the user is plugging into is very clear. By reusing well-known industry standards for hardware, some of the embodiments of the disclosed invention avoid requiring custom software for playback, and thus can operate with devices designed for the broadest markets and applicability.
Existing media players for disks must keep track with the Blu-ray AACS, DVD CSS, and other existing or potential new encryption methods associated to future drive/disk based content protection schemes. These schemes may require the movie player to decrypt the information. On general-purpose computer systems today, the movie player is often implemented in software, thus exposing vulnerabilities that can be easily exploited to gain either the unencrypted digital content directly, or the necessary encryption keys and authentication information to impersonate the player and allow a hacker to recover unencrypted media using his own means.
As an attempted solution, operating system vendors such as Microsoft have engaged in creating protected media paths through the software system, to thwart memory inspectors and debuggers from being able to gain access to the state in the software movie player. These schemes suffer from the flaw of attempting to prevent one part of the software system from viewing other parts, by performing kernel enforcement techniques (either by shutting down the movie play when an unauthorized kernel module is detected, one which could potentially circumvent the system protection against examining state in the movie player, or performing part-by-part software encryption). Unfortunately, these mechanisms all suffer from the software trusted client problem. Trusted clients necessarily have to expose the unencrypted movie somewhere—the so-called analog hole. Software, by definition, runs on general purpose computing platforms, and thus a trusted software client has to place the unencrypted movie in memory or across a bus—both activities can be easily eavesdropped-upon by common software or hardware implements. Trusted hardware clients, on the other hand, increase the difficulty of accessing the unencrypted information by potentially placing it in locations and across buses segregated from the general-purpose computing infrastructure.
Furthermore, prior art has not sufficiently taken advantage of the graphics processing unit (GPU) to perform the decryption of the media. The GPU is typically a piece of hardware which connects to the computer or player system through a bus on one end, and to the display on the other end. GPUs generally are involved with managing the display frame, including providing two- and three-dimensional drawing primitives (such as may be leveraged by OpenGL). Furthermore, trends in GPU development have lead to GPUs that can perform arbitrary processing of offload software and/or specifically assist in the decoding of compressed video and audio streams. GPUs often possess their own memory, some of which they may expose to the native computing host by a memory bus, and some of which they may contain internally. GPU vendors have APIs such as Nvidia's VDPAU and Intel's VA API that allow movie components (stream data) to be presented directly into the GPU, where the GPU handles the decompression, rendering, and animation without further host involvement.
The following disclosed invention and its embodiments overcome the problems listed above.